|
Author |
Thread Statistics | Show CCP posts - 0 post(s) |
Jone Sad
The Scope Gallente Federation
7
|
Posted - 2017.01.16 11:57:29 -
[1] - Quote
Everyone know sites like http://evepraisal.com/ or other that use eve price apis.
When I do call to api (ESI MarketOrder), this call spends time. For example for 10-50 items it spent about minute maybe more (for fetching from eve api prices). But other sites much less time. Why?
First thought were that there is a cron that update prices in db (i think there is mongoDB) and use them (latest).
Is there any other solution how get prices quicker?
PS: With 200+ items (count assets for example) script can hang out for a 5-15 minutes... |
Jone Sad
The Scope Gallente Federation
7
|
Posted - 2017.01.16 12:03:53 -
[2] - Quote
Unfortunately we need call x2 queries for one item (buy + sell). So for 200 items it will be about 400 call executions. |
Jone Sad
The Scope Gallente Federation
7
|
Posted - 2017.01.23 01:12:20 -
[3] - Quote
Some calculations....
ESI allows get one item, sell\buy or sell+buy. It's ok... But, let's try to use it...
When we have a lot of items (simple example assets) we need do huge api calls. Even if we will call without type_id marketOrders we will get ATM about 25 pages, 10k entries each (25 * 10 000 = 250 000) . So our number (minimal) is 250k entries in one "update" of DB prices.
Weak point is that we can use "type_id" param (in query) only as INT not STRING (for example array of params like "34,35,...").
In this case, when we can limit result by several type_id we will have MUCH less entries and we can use it easy.
At this moment we have x2 cases for prices updates:
1. We cannot use global market without type_id because it return a lot of unneccessary entries, but we still have to parse them to get lowest\biggest price. So script spents A LOT OF time for this... 2. Query single item - yes it's quick enough for api but if we need get prices for 250 items - script can be hanged out (execution for a minute or even 5 it not a deal at all).
Developers of ESI pls do something with it. Pls change type_id to STRING (comma delimeter) so we can use it like "34,35,36". |
Jone Sad
The Scope Gallente Federation
7
|
Posted - 2017.01.23 02:22:03 -
[4] - Quote
Hm, optimized script retrieve 30 pages (cached seems like) data for 124 seconds. First run gave me 227 seconds... Not much. maybe is not bad... Will see in a future... But anyway CCP Devs you should add more params for order queries... |
|
|
|